package com.itheima.Demo;

import java.lang.reflect.Constructor;
import java.lang.reflect.Method;

public class Demo反射执行成员方法 {
    public static void main(String[] args) throws Exception {
        //获取学生类字节码对象
        Class<Student> c1 = Student.class;
        //获取成员方法
        //获取吃饭方法
        Method eat = c1.getMethod("eat", String.class);
        //获取睡觉的方法;
        Method sleep = c1.getMethod("sleep");
        //Object invoke(Object obj , Object... o)  :让方法执行
        //反射获取构造方法
        Constructor<Student> con = c1.getConstructor();
        //根据构造方法创建对象;
        Student stu = con.newInstance();
        //执行睡觉方法
        sleep.invoke(stu);
        //执行吃饭的方法;
        eat.invoke(stu,"便便");

    }
}
